package com.product.pojo;

import com.alibaba.fastjson.annotation.JSONField;

import java.util.List;

/**
 * description: TODO JSON模板.
 *
 * @author Pang Xianming
 * @version V1.0
 * @date 2024/10/22 10:06
 * @description <p>JSON模板</p>
 **/
public class TargetJSON {

    /**
     * ChannelInfo : [{"Car_List":[{"Brand":"未知","Color":"未知","ID":"O2024102209533869200000000000000000023195","Lat":23.35413714817592,"Lon":113.2794240834762,"Lpn":"未知","LpnColor":"未知","ObjId":2781,"PosX":965,"PosY":601,"PtcHeading":241.557071685791,"Speed":35.93344497680664,"Type":"未知","VehL":0,"VehType":-1},{"Brand":"福田_奥铃TX-2012款_货车","Color":"黑色","ID":"O2024102209533407100000000000000000023185","Lat":23.35405956968969,"Lon":113.2792931381537,"Lpn":"粤WK9162","LpnColor":"蓝色","ObjId":2777,"PosX":1060,"PosY":1044,"PtcHeading":241.557071685791,"Speed":39.82978439331055,"Type":"未知","VehL":0,"VehType":9}],"ChannelId":2,"Direction":1,"DriveWay":1,"OtherVehicle_List":null,"People_List":null}]
     * DevNo : 23
     * Frame : 501714
     * MsgType : 1000
     * Timestamp : 1729562024870
     */

    @JSONField(name = "DevNo")
    private String DevNo;
    @JSONField(name = "Frame")
    private String Frame;
    @JSONField(name = "MsgType")
    private String MsgType;
    @JSONField(name = "Timestamp")
    private String Timestamp;
    @JSONField(name = "ChannelInfo")
    private List<ChannelInfoBean> ChannelInfo;

    public String getDevNo() {
        return DevNo;
    }

    public void setDevNo(String DevNo) {
        this.DevNo = DevNo;
    }

    public String getFrame() {
        return Frame;
    }

    public void setFrame(String Frame) {
        this.Frame = Frame;
    }

    public String getMsgType() {
        return MsgType;
    }

    public void setMsgType(String MsgType) {
        this.MsgType = MsgType;
    }

    public String getTimestamp() {
        return Timestamp;
    }

    public void setTimestamp(String Timestamp) {
        this.Timestamp = Timestamp;
    }

    public List<ChannelInfoBean> getChannelInfo() {
        return ChannelInfo;
    }

    public void setChannelInfo(List<ChannelInfoBean> ChannelInfo) {
        this.ChannelInfo = ChannelInfo;
    }

    public static class ChannelInfoBean {
        /**
         * Car_List : [{"Brand":"未知","Color":"未知","ID":"O2024102209533869200000000000000000023195","Lat":23.35413714817592,"Lon":113.2794240834762,"Lpn":"未知","LpnColor":"未知","ObjId":2781,"PosX":965,"PosY":601,"PtcHeading":241.557071685791,"Speed":35.93344497680664,"Type":"未知","VehL":0,"VehType":-1},{"Brand":"福田_奥铃TX-2012款_货车","Color":"黑色","ID":"O2024102209533407100000000000000000023185","Lat":23.35405956968969,"Lon":113.2792931381537,"Lpn":"粤WK9162","LpnColor":"蓝色","ObjId":2777,"PosX":1060,"PosY":1044,"PtcHeading":241.557071685791,"Speed":39.82978439331055,"Type":"未知","VehL":0,"VehType":9}]
         * ChannelId : 2
         * Direction : 1
         * DriveWay : 1
         * OtherVehicle_List : null
         * People_List : null
         */

        @JSONField(name = "ChannelId")
        private String ChannelId;
        @JSONField(name = "Direction")
        private String Direction;
        @JSONField(name = "DriveWay")
        private String DriveWay;
        @JSONField(name = "OtherVehicle_List")
        private Object OtherVehicleList;
        @JSONField(name = "People_List")
        private Object PeopleList;
        @JSONField(name = "Car_List")
        private List<CarListBean> CarList;

        public String getChannelId() {
            return ChannelId;
        }

        public void setChannelId(String ChannelId) {
            this.ChannelId = ChannelId;
        }

        public String getDirection() {
            return Direction;
        }

        public void setDirection(String Direction) {
            this.Direction = Direction;
        }

        public String getDriveWay() {
            return DriveWay;
        }

        public void setDriveWay(String DriveWay) {
            this.DriveWay = DriveWay;
        }

        public Object getOtherVehicleList() {
            return OtherVehicleList;
        }

        public void setOtherVehicleList(Object OtherVehicleList) {
            this.OtherVehicleList = OtherVehicleList;
        }

        public Object getPeopleList() {
            return PeopleList;
        }

        public void setPeopleList(Object PeopleList) {
            this.PeopleList = PeopleList;
        }

        public List<CarListBean> getCarList() {
            return CarList;
        }

        public void setCarList(List<CarListBean> CarList) {
            this.CarList = CarList;
        }

        public static class CarListBean {
            /**
             * Brand : 未知
             * Color : 未知
             * ID : O2024102209533869200000000000000000023195
             * Lat : 23.35413714817592
             * Lon : 113.2794240834762
             * Lpn : 未知
             * LpnColor : 未知
             * ObjId : 2781
             * PosX : 965.0
             * PosY : 601.0
             * PtcHeading : 241.557071685791
             * Speed : 35.93344497680664
             * Type : 未知
             * VehL : 0.0
             * VehType : -1
             */

            @JSONField(name = "Brand")
            private String Brand;
            @JSONField(name = "Color")
            private String Color;
            @JSONField(name = "ID")
            private String ID;
            @JSONField(name = "Lat")
            private String Lat;
            @JSONField(name = "Lon")
            private String Lon;
            @JSONField(name = "Lpn")
            private String Lpn;
            @JSONField(name = "LpnColor")
            private String LpnColor;
            @JSONField(name = "ObjId")
            private String ObjId;
            @JSONField(name = "PosX")
            private String PosX;
            @JSONField(name = "PosY")
            private String PosY;
            @JSONField(name = "PtcHeading")
            private String PtcHeading;
            @JSONField(name = "Speed")
            private String Speed;
            @JSONField(name = "Type")
            private String Type;
            @JSONField(name = "VehL")
            private String VehL;
            @JSONField(name = "VehType")
            private String VehType;

            public String getBrand() {
                return Brand;
            }

            public void setBrand(String Brand) {
                this.Brand = Brand;
            }

            public String getColor() {
                return Color;
            }

            public void setColor(String Color) {
                this.Color = Color;
            }

            public String getID() {
                return ID;
            }

            public void setID(String ID) {
                this.ID = ID;
            }

            public String getLat() {
                return Lat;
            }

            public void setLat(String Lat) {
                this.Lat = Lat;
            }

            public String getLon() {
                return Lon;
            }

            public void setLon(String Lon) {
                this.Lon = Lon;
            }

            public String getLpn() {
                return Lpn;
            }

            public void setLpn(String Lpn) {
                this.Lpn = Lpn;
            }

            public String getLpnColor() {
                return LpnColor;
            }

            public void setLpnColor(String LpnColor) {
                this.LpnColor = LpnColor;
            }

            public String getObjId() {
                return ObjId;
            }

            public void setObjId(String ObjId) {
                this.ObjId = ObjId;
            }

            public String getPosX() {
                return PosX;
            }

            public void setPosX(String PosX) {
                this.PosX = PosX;
            }

            public String getPosY() {
                return PosY;
            }

            public void setPosY(String PosY) {
                this.PosY = PosY;
            }

            public String getPtcHeading() {
                return PtcHeading;
            }

            public void setPtcHeading(String PtcHeading) {
                this.PtcHeading = PtcHeading;
            }

            public String getSpeed() {
                return Speed;
            }

            public void setSpeed(String Speed) {
                this.Speed = Speed;
            }

            public String getType() {
                return Type;
            }

            public void setType(String Type) {
                this.Type = Type;
            }

            public String getVehL() {
                return VehL;
            }

            public void setVehL(String VehL) {
                this.VehL = VehL;
            }

            public String getVehType() {
                return VehType;
            }

            public void setVehType(String VehType) {
                this.VehType = VehType;
            }

            @Override
            public String toString() {
                return Brand + ',' +
                       Color + ',' +
                        ID + ',' +
                        Lat + ',' +
                        Lon + ',' +
                        Lpn + ',' +
                        LpnColor + ',' +
                        ObjId + ',' +
                        PosX + ',' +
                        PosY + ',' +
                        PtcHeading + ',' +
                        Speed + ',' +
                        Type + ',' +
                        VehL + ',' +
                        VehType + ',';
            }
        }
    }
}
